package com.dimples.dd.system.convert;

import com.dimples.dd.common.pojo.PageResult;
import com.dimples.dd.system.framework.file.core.client.s3.FilePreSignedUrlBO;
import com.dimples.dd.system.model.entity.SystemFileDO;
import com.dimples.dd.system.model.form.FileCreateForm;
import com.dimples.dd.system.model.vo.FilePageVO;
import com.dimples.dd.system.model.vo.FilePreSignedUrlRespVO;
import org.mapstruct.Mapper;

/**
 * @author zhongyj <1126834403@qq.com><br/>
 * @date 2024/8/21
 */
@Mapper(componentModel = "spring")
public interface FileConvert {

    SystemFileDO form2Entity(FileCreateForm fileCreateForm);

    FilePreSignedUrlRespVO bo2Vo(FilePreSignedUrlBO preSignedObjectUrl);

    PageResult<FilePageVO> entity2Page(PageResult<SystemFileDO> filePage);

    FilePageVO entity2Vo(SystemFileDO systemFileDO);
}
